ccR.Rogue.Assassination = {
	Crimson_Tempest =
	function()
		if ccR.Spell.Is.Ready(CRIMSON_TEMPEST)
		and ccR.Player.Combo_Points() >= 1
		then
			local vMissingDebuff = 0
			for x = 1, # ccR_Enemies_In_Combat do
				local vUnit = ccR_Enemies_In_Combat[x]
				if ccR.Unit.Distance(vUnit, "player") <= 10
				and not ccR.Unit.Has.MyDebuff(vUnit, CRIMSON_TEMPEST) 
				then
					vMissingDebuff = vMissingDebuff + 1 
				end
			end
			if vMissingDebuff > 0 then
				ccR.Cast.Spell(CRIMSON_TEMPEST)
			end
		end
	end,
	Rupture = 
	function(count)
		local vEnemiesWithOutRupture = 0
		if not ccR.Target.Has.My.Debuff(RUPTURE) then
			if ccR.Spell.CanAttack(RUPTURE) then ccR.Cast.Attack(RUPTURE) end
		else
			for x = 1, # ccR_Enemies_In_Combat do
				local vUnit = ccR_Enemies_In_Combat[x]
				if ccR.Spell.CanAttack(RUPTURE, vUnit)
				and ccR.Player.Is.Facing(vUnit)
				and not ccR.Unit.Has.MyDebuff(vUnit, RUPTURE) 
				then
					vEnemiesWithOutRupture = vEnemiesWithOutRupture + 1 
				end
			end
			if vEnemiesWithOutRupture < count then
				for x = 1, # ccR_Enemies_In_Combat do
					local vUnit = ccR_Enemies_In_Combat[x]
					if ccR.Spell.CanAttack(RUPTURE, vUnit)
					and ccR.Player.Is.Facing(vUnit)
					and (ccR.Player.Combo_Points() >= 1 or ccR.Player.Buff.Stacks(ANTICIPATION) >= 1)
					and not ccR.Unit.Has.MyDebuff(vUnit, RUPTURE) 
					then
						ccR.Cast.Attack(RUPTURE, vUnit)
						return
					end
				end
			end
		end
	end,
}
setmetatable(ccR.Rogue.Assassination, ccR.Rogue)